package com.sharp.kernel.mybatis.mapper.join;

import com.sharp.kernel.mybatis.join.entity.IOutJoinRelationship;
import com.sharp.kernel.mybatis.provider.OuterJoinSelectProvider;
import org.apache.ibatis.annotations.Options;
import org.apache.ibatis.annotations.SelectProvider;
import tk.mybatis.mapper.annotation.RegisterMapper;

import java.util.List;

/**
 * Title: OuterJoinSelectMapper
 * Description: Copyright: Copyright (c) 2019 Company: BHFAE
 *
 * @author Sharp
 * @date 2022/7/26 16:08
 */
@RegisterMapper
public interface OuterJoinSelectMapper<T extends IOutJoinRelationship> {
    @Options(
            useGeneratedKeys = true
    )
    @SelectProvider(
            type = OuterJoinSelectProvider.class,
            method = "dynamicSQL"
    )
    List<T> outerJoinSelectByExample(Object var1);
}
